From 71439ea4bbac92b0075bc1448a78cb52c36af58f Mon Sep 17 00:00:00 2001 From: Ewan Mellor Date: Wed, 14 Mar 2007 23:26:33 +0000 Subject: [PATCH] Implement xm domid and xm console using the Xen-API, and fix xm domname. Signed-off-by: Tom Wilkie --- tools/python/xen/xm/main.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/tools/python/xen/xm/main.py b/tools/python/xen/xm/main.py index 5b78f87530..152c1a69f7 100644 --- a/tools/python/xen/xm/main.py +++ b/tools/python/xen/xm/main.py @@ -1140,14 +1140,16 @@ def xm_destroy(args): else: server.xend.domain.destroy(dom) - def xm_domid(args): arg_check(args, "domid", 1) name = args[0] - dom = server.xend.domain(name) - print sxp.child_value(dom, 'domid') + if serverType == SERVER_XEN_API: + print server.xenapi.VM.get_domid(get_single_vm(name)) + else: + dom = server.xend.domain(name) + print sxp.child_value(dom, 'domid') def xm_domname(args): arg_check(args, "domname", 1) @@ -1155,7 +1157,7 @@ def xm_domname(args): name = args[0] if serverType == SERVER_XEN_API: - print server.xenapi.VM.get_domid(get_single_vm(dom)) + print server.xenapi.VM.get_name_label(get_single_vm(name)) else: dom = server.xend.domain(name) print sxp.child_value(dom, 'name') @@ -1384,13 +1386,17 @@ def xm_console(args): dom = params[0] try: - info = server.xend.domain(dom) + if serverType == SERVER_XEN_API: + domid = int(server.xenapi.VM.get_domid(get_single_vm(dom))) + else: + info = server.xend.domain(dom) + domid = int(sxp.child_value(info, 'domid', '-1')) except: if quiet: sys.exit(1) else: raise - domid = int(sxp.child_value(info, 'domid', '-1')) + if domid == -1: if quiet: sys.exit(1) -- 2.30.2